Chrome 137

تاريخ الإصدار الثابت: 27 أيار (مايو) 2025

ما لم يُذكر خلاف ذلك، تنطبق التغييرات التالية على الإصدار 137 من Chrome في قناة الإصدار الثابت لنظام التشغيل Android وChromeOS وLinux وmacOS وWindows.

CSS وواجهة المستخدم

دالة if() في CSS

توفّر دالة CSS if() طريقة موجزة للتعبير عن القيم الشَرطية. ويقبل سلسلة من أزواج الشروط والقيم مفصولة بفواصل منقوطة. تقيّم الدالة كل شرط على التوالي وتُعيد القيمة المرتبطة بأول شرط صحيح. إذا لم يتم تقييم أيّ من الشروط على أنّه صحيح، تعرِض الدالة بثًا فارغًا من الرموز المميّزة. يتيح لك ذلك التعبير عن المنطق الشَرطي المعقد بطريقة بسيطة وموجزة.

مثال:

div {
  color: var(--color);
  background-color: if(style(--color: white): black; else: white);
}

.dark {
  --color: black;
}

.light {
  --color: white;
}
<div class="dark">dark</div>
<div class="light">light</div>

تتبُّع الخطأ رقم 346977961 | إدخال ChromeStatus.com | المواصفات

خصائص reading-flow وreading-order في CSS

تتحكّم سمة reading-flow في CSS بترتيب عرض العناصر في تنسيق مرن أو شبكة أو تنسيق كتل لأدوات تسهيل الاستخدام، كما تتحكّم في التركيز على العناصر باستخدام tabulator لتنقّل التركيز في لوحة المفاتيح.

تسمح سمة CSS‏ reading-order للمؤلفين بإلغاء الترتيب يدويًا داخل حاوية مسار القراءة. وهو عدد صحيح وقيمته التلقائية هي 0.

اطّلِع على مزيد من المعلومات عن هذه السمات في مقالة استخدام ميزة "مسار القراءة" في CSS للتنقّل المنطقي التسلسلي للتركيز وجرِّب بعض الأمثلة.

تتبُّع الخطأ رقم 40932006 | إدخال ChromeStatus.com | المواصفات

تجاهُل المسافة بين الأحرف في النصوص المكتوبة بخط اليد

تضيف هذه الميزة منطقًا لتجاهل إعدادات المسافة بين الأحرف للنص المكتوب بخط اليد كما حدّدها المطوّر، بما يتوافق مع المواصفات، لضمان عدم تعطيل المسافة بين الأحرف لبنية الكلمة، وتهدف إلى توفير تجربة أفضل للمستخدمين الذين يعتمدون على النصوص المكتوبة بخط اليد.

من خلال هذه الميزة، يضمن Chrome أن تكون النصوص المكتوبة بخط اليد قابلة للقراءة ومتباعدة بشكلٍ سليم، حتى إذا لم تكن الخطوط تتضمّن ميزات مطبعية متقدّمة.

تشمل النصوص البرمجية التي ينطبق عليها ذلك في Chromium اللغة العربية واللغة الروهينجية الهانفية واللغة المندائية واللغة المنغولية واللغة النيكو واللغة الفاغس با والسريانية، لأنّ هذه النصوص البرمجية تُعدّ مخطوطة وفقًا للمواصفات.

تتبُّع الخطأ رقم 40618336 | إدخال ChromeStatus.com | المواصفات

Selection API getComposedRanges وdirection

توفّر هذه الميزة طريقتَي واجهة برمجة تطبيقات جديدتَين لواجهة برمجة التطبيقات Selection API:

  • Selection.direction الذي يعرض اتجاه التحديد إما none أو forward أو backward
  • Selection.getComposedRanges() التي تُرجع قائمة بقيم 0 أو 1 مكوّنة StaticRange

يُسمح للعنصر StaticRange المُركّب بعبور حدود الظل، وهو ما لا يمكن للعنصر Range العادي فعله.

على سبيل المثال:

const range = getSelection().getComposedRanges({ shadowRoots: [root] });

إذا تجاوز الاختيار حدود جذر الظل التي لم يتم توفيرها في قائمة shadowRoots، سيتم إعادة تحديد نطاق نقاط نهاية StaticRange لتكون خارج هذه الشجرة. يضمن ذلك عدم عرض Chrome لشجيرات ظلّ مجهولة.

تتبُّع الخطأ رقم 40286116 | إدخال ChromeStatus.com | المواصفات

دعم قناة "offset-path: shape()"

إتاحة offset-path: shape() للسماح باستخدام الأشكال المتجاوبة لضبط مسار التحريك

تتبُّع الخطأ رقم 389713717 | إدخال ChromeStatus.com | المواصفات

إتاحة سمة transform في SVGSVGElement

تتيح هذه الميزة تطبيق خصائص التحويل، مثل التصغير والتكبير والدوران والانحراف، مباشرةً على العنصر الجذر <svg> باستخدام سمة transform. يتيح لك هذا التحسين إمكانية التحكّم في نظام إحداثيات SVG بالكامل أو محتوياته ككل، ما يوفّر مرونة أكبر في إنشاء رسومات متحركة متجاوبة وتفاعلية. من خلال السماح باستخدام هذه السمة، يمكن تحويل عنصر <svg> بدون الحاجة إلى عناصر لف إضافية أو حلول بديلة معقّدة في CSS، ما يسهّل عملية إنشاء رسومات ويب متحركة وقابلة للتوسيع.

تتبُّع الخطأ رقم 40313130 | إدخال ChromeStatus.com | المواصفات

لون التمييز للنظام للسمة accent-color

يتيح لك ذلك استخدام درجة لون نظام التشغيل لعناصر النموذج. باستخدام سمة accent-color CSS، يمكنك التأكّد من أنّ عناصر النموذج، مثل مربعات الاختيار والأزرار الاختيارية وأشرطة التقدّم، تتّبع تلقائيًا لون اللكنة الذي يحدّده نظام التشغيل الخاص بالمستخدم. وقد تم توفير هذه الميزة على نظام التشغيل macOS منذ عام 2021، وهي متاحة الآن على نظامَي التشغيل Windows وChromeOS.

تتبُّع الخطأ رقم 40764875 | إدخال ChromeStatus.com | المواصفات

السماح لعنصر <use> بالإشارة إلى عنصر الجذر لمستند خارجي من خلال حذف المقتطف

تعمل هذه الميزة على تبسيط عنصر SVG <use> من خلال تخفيف متطلبات المرجع. قبل الإصدار 137 من Chrome، كان عليك الإشارة صراحةً إلى الأجزاء داخل مستند SVG. في حال عدم تقديم معرّف للفقرة، لن يتمكّن <use> من حلّ الاستهداف ولن يتم عرض أي محتوى أو الإشارة إليه.

على سبيل المثال، عنصر <use> يشير إلى ملف خارجي باستخدام علامة تعريف القطعة:

<svg>
  <use xlink:href="myshape.svg#icon"></use>
</svg>

في هذا المثال، #icon هو معرّف المقتطف الذي يشير إلى عنصر مع id="icon" ضمن myshape.svg.

بدون معرّف للجزء:

<svg>
  <use xlink:href="myshape.svg"></use>
</svg>

باستخدام هذه الميزة، سيؤدي حذف الأجزاء أو مجرد تقديم اسم ملف svg الخارجي إلى الإشارة تلقائيًا إلى عنصر الجذر، ما يغنيك عن تغيير المستند المُشار إليه لتحديد معرّف للجذر. يبسط هذا التحسين عملية التعديل اليدوي ويزيد من كفاءتها.

تتبُّع الخطأ رقم 40362369 | إدخال ChromeStatus.com | المواصفات

أنواع ألوان النقاط العائمة في اللوحة

يتيح استخدام تنسيقات وحدات البكسل ذات النقطة العائمة (بدلاً من النقطة الثابتة المكوّنة من 8 بت) مع CanvasRenderingContext2D وOffscreenCanvasRenderingContext2D وImageData.

وهذا ضروري للتطبيقات العالية الدقة (مثل العروض المرئية الطبية)، والمحتوى ذي النطاق العالي الديناميكية، ومساحات الألوان الخطية.

تتبُّع الخطأ رقم 40245602 | إدخال ChromeStatus.com | المواصفات

view-transition-name: match-element

تُنشئ قيمة match-element معرّفًا فريدًا استنادًا إلى هوية العنصر وتعيد تسمية هذا العنصر بالقيمة نفسها. يتم استخدام هذا الإجراء في تطبيقات الصفحة الواحدة التي يتم فيها نقل العنصر وتريد إضافة تأثير متحرك إليه باستخدام انتقال عرض.

تتبُّع الخطأ رقم 365997248 | إدخال ChromeStatus.com | المواصفات

الدفعات

نوع الخطأ الذي تم رصده عند إنشاء بيانات اعتماد WebAuthn في payment: SecurityError أصبح NotAllowedError

صحِّح نوع الخطأ الذي تم طرحه أثناء إنشاء بيانات اعتماد WebAuthn لبيانات اعتماد payment. بسبب عدم تطابق المواصفات في السابق، سيؤدي إنشاء بيانات اعتماد payment في إطار iframe من مصدر مختلف بدون تفعيل المستخدم إلى طرح SecurityError بدلاً من NotAllowedError، وهو ما يتم طرحه لمحاولة استخدام بيانات اعتماد غير مرتبطة بالدفع.

هذا تغيير جذري، وإن كان خاصًا بمجال معيّن. يتأثر الرمز البرمجي الذي رصد في السابق نوع الخطأ الذي تم طرحه (على سبيل المثال، e instanceof SecurityError). سيستمر عمل الرمز الذي يعالج الأخطاء بشكل عام أثناء إنشاء بيانات الاعتماد (مثل catch (e)).

تتبُّع الخطأ رقم 41484826 | إدخال ChromeStatus.com | المواصفات

واجهات برمجة تطبيقات الويب

تقسيم مساحات التخزين لعناوين URL الخاصة بكائنات ثنائية كبيرة (BLOB): الاسترجاع/التنقّل

في إطار مواصلة ميزة "تقسيم مساحة التخزين"، نفَّذ Chrome عملية تقسيم لإمكانية الوصول إلى عناوين URL الخاصة بالكائنات الثنائية الكبيرة (BLOB) باستخدام مفتاح التخزين (الموقع الإلكتروني من المستوى الأعلى ومصدر الإطار والقيمة المنطقية has-cross-site-ancestor)، باستثناء عمليات التنقّل على المستوى الأعلى التي ستظل مجزّأة حسب مصدر الإطار فقط. يشبه هذا السلوك السلوك الذي ينفّذه حاليًا كلّ من Firefox وSafari، وينسّق استخدام عنوان URL لملفّ Blob مع مخطّط التقسيم الذي تستخدمه واجهات برمجة تطبيقات التخزين الأخرى كجزء من ميزة تقسيم مساحة التخزين. بالإضافة إلى ذلك، يفرض Chrome الآن علامة noopener على عمليات التنقّل على المستوى الأعلى التي يبدأها معالج العرض إلى عناوين URL الخاصة بالكائنات الثنائية الكبيرة (BLOB) حيث يكون الموقع الإلكتروني المقابل من عدة مواقع إلكترونية بالإضافة إلى الموقع الإلكتروني من المستوى الأعلى الذي ينفّذ عملية التنقّل. يؤدي ذلك إلى مواءمة Chrome مع السلوك المشابه في Safari، وتم تعديل المواصفات ذات الصلة لتعكس هذه التغيُّرات.

تتبُّع الخطأ رقم 40057646 | إدخال ChromeStatus.com

تسلسلات استدعاء الدوالّ في تقارير الأعطال من صفحات الويب التي لا تستجيب

تلتقط هذه الميزة تسلسل استدعاء JavaScript عندما تصبح صفحة الويب غير مستجيبة بسبب تشغيل رمز JavaScript لحلقة لا نهائية أو عملية حسابية طويلة جدًا. يساعد ذلك المطوّرين في تحديد سبب عدم الاستجابة وإصلاحه بسهولة أكبر. يتم تضمين تسلسل استدعاء JavaScript في واجهة برمجة التطبيقات لإعداد تقارير الأعطال عندما يكون السبب هو عدم الاستجابة.

تتبُّع الخطأ رقم 1445539 | إدخال ChromeStatus.com | المواصفات

Document-Isolation-Policy

يتيح Document-Isolation-Policy للمستند تفعيل crossOriginIsolation لنفسه، بدون الحاجة إلى نشر ميزة "التعاون في وضع الأجهزة الجوّالة" أو ميزة "الوصول المشترَك إلى البيانات"، وبغض النظر عن حالةcrossOriginIsolation الصفحة. تستند السياسة إلى عملية عزل. بالإضافة إلى ذلك، سيتم تحميل موارد المستند الفرعية التي لا تستخدم بروتوكول مشاركة الموارد المشتركة المنشأ (CORS) من مصادر متعددة إما بدون بيانات اعتماد أو يجب أن تتضمّن عنوان CORP.

تتبُّع الخطأ رقم 333029146 | إدخال ChromeStatus.com | المواصفات

Ed25519 في التشفير على الويب

تضيف هذه الميزة إمكانية استخدام خوارزميات Curve25519 في واجهة برمجة التطبيقات Web Cryptography API، وهي خوارزمية التوقيع Ed25519.

تتبُّع الخطأ رقم 1370697 | إدخال ChromeStatus.com | المواصفات

منع التتبّع باستخدام سياسة HSTS

الحدّ من تتبُّع المستخدِمين من قِبل جهات خارجية باستخدام ذاكرة التخزين المؤقت لبروتوكول HSTS

لا تسمح هذه الميزة إلا بترقيات بروتوكول HSTS للتنقّلات ذات المستوى الأعلى، كما تحظر ترقيات بروتوكول HSTS لطلبات الموارد الفرعية. ويؤدي ذلك إلى جعل استخدام ذاكرة التخزين المؤقت لآلية HSTS من أجل تتبُّع المستخدِمين على الإنترنت أمرًا غير ممكن على المواقع الإلكترونية التابعة لجهات خارجية.

تتبُّع الخطأ رقم 40725781 | إدخال ChromeStatus.com

WebAssembly

دمج وعد JavaScript

‫JavaScript Promise Integration ‏ (JSPI) هي واجهة برمجة تطبيقات تسمح لتطبيقات WebAssembly بالاندماج مع JavaScript Promises.

ويسمح هذا الإجراء لبرنامج WebAssembly بالعمل كمنشئ لوعد، ويسمح لبرنامج WebAssembly بالتفاعل مع واجهات برمجة التطبيقات التي تتضمّن وعدًا.

على وجه التحديد، عندما يستخدم أحد التطبيقات JSPI للاتّصال بواجهة برمجة تطبيقات (JavaScript) التي تتضمّن وعدًا، يتم تعليق رمز WebAssembly، ويتم منح المُرسِل الأصلي لطلب برنامج WebAssembly وعدًا سيتم تنفيذه عند اكتمال برنامج WebAssembly أخيرًا.

إدخال ChromeStatus.com | المواصفات

WebAssembly Branch Hints

تحسين أداء رمز WebAssembly المجمّع من خلال إبلاغ المحرّك بأنّه من المرجّح جدًا أن يتّخذ مسارًا معيّنًا لتعليمات فرع معيّنة

ويسمح ذلك للمحرّك باتخاذ قرارات أفضل بشأن تنسيق الرمز البرمجي (تحسين عمليات الوصول إلى ذاكرة التخزين المؤقت للتعليمات) وتخصيص السجلّات.

إدخال ChromeStatus.com | المواصفات

WebGPU

GPUTextureView لربط externalTexture

يُسمح الآن باستخدام GPUTextureView لربط externalTexture عند إنشاء GPUBindGroup.

تتبُّع الخطأ رقم 398752857 | إدخال ChromeStatus.com | المواصفات

copyBufferToBuffer زيادة عدد الطلبات

تتضمّن طريقة GPUCommandEncoder copyBufferToBuffer() الآن طريقة أبسط لنسخ وحدات التخزين المؤقت بالكامل باستخدام حمولة زائدة جديدة مع مَعلمات متغيرة اختيارية لحجم الملفات وأماكنها.

إدخال ChromeStatus.com | المواصفات

للمؤسسات

تسجيل عناوين IP وإعداد تقارير عنها

تعمل خدمة Chrome Enterprise على تحسين إمكانات مراقبة الأمان والاستجابة للحوادث من خلال جمع عناوين IP المحلية والبعيدة والإبلاغ عنها، وإرسال عناوين IP هذه إلى سجلّات التحقيق الأمني (SIT). بالإضافة إلى ذلك، ستسمح Chrome Enterprise للمشرفين بإرسال عناوين IP اختياريًا إلى موفّري أنظمة إدارة البنية الأساسية لأمان المعلومات (SIEM) التابعين لجهات خارجية وGoogle من خلال موصِّل إعداد تقارير Chrome Enterprise.

يتوفّر هذا الخيار لعملاء Chrome Enterprise Core.

إدخال ChromeStatus.com

عمليات التجربة والتقييم

سمة حظر العرض عند عدد اللقطات الكامل في الثانية

تُضيف رمزًا جديدًا لحظر العرض full-frame-rate إلى سمات الحظر. عندما يتم حظر أداة التقديم باستخدام الرمز المميّز full-frame-rate، ستعمل أداة التقديم بمعدل عرض أقل للإطارات من أجل حجز المزيد من الموارد للتحميل.

تتبُّع الخطأ رقم 397832388 | إدخال ChromeStatus.com

إيقاف تشغيل الوسائط مؤقتًا في إطارات iframe التي لم يتم عرضها

تُضيف سياسة إذن media-playback-while-not-rendered للسماح لمواقع الويب التي تضمّ المحتوى بالتوقف مؤقتًا عن تشغيل الوسائط في إطارات iframe المضمّنة التي لا يتم عرضها، أي أنّه يتم ضبط السمة display على none. من المفترض أن يسمح ذلك للمطوّرين بتطوير تجارب أكثر ملاءمةً للمستخدمين وتحسين الأداء أيضًا من خلال السماح للمتصفح بتشغيل المحتوى غير المرئي للمستخدمين.

الإصدار التجريبي من الإصدار العلني | تتبُّع الخطأ رقم 351354996 | إدخال ChromeStatus.com

Rewriter API

تعمل واجهة برمجة التطبيقات Rewriter API على تحويل النص الذي يتم إدخاله وإعادة صياغته بالطرق المطلوبة، وذلك بدعم من نموذج لغوي للذكاء الاصطناعي على الجهاز. يمكن للمطوّرين استخدام واجهة برمجة التطبيقات هذه لإزالة تكرار الكلمات في النص لتلبية الحدّ الأقصى المسموح به من الكلمات، أو لإعادة صياغة الرسائل لتلائم الجمهور المستهدَف أو لتكون أكثر فائدة إذا تبيّن أنّ الرسالة تستخدم لغة مسيئة، أو لإعادة صياغة مشاركة أو مقالة لاستخدام كلمات و مفاهيم أبسط وغير ذلك.

الإصدار التجريبي من الميزة | تتبُّع الخطأ رقم 358214322 | إدخال ChromeStatus.com | المواصفات

Writer API

يمكن استخدام Writer API لكتابة مواد جديدة استنادًا إلى طلب مهمة كتابة، مدعومًا بنموذج لغة الذكاء الاصطناعي على الجهاز. سيتمكّن المطوّرون من استخدام واجهة برمجة التطبيقات هذه لإنشاء تفسيرات نصية للبيانات المنظَّمة، وإنشاء مشاركة عن أحد المنتجات استنادًا إلى المراجعات أو وصف المنتج، وتوسيع قوائم المميزات والعيوب لتشمل مشاهدات كاملة وغير ذلك.

الإصدار التجريبي من الإصدار العلني | تتبُّع الخطأ رقم 357967382 | إدخال ChromeStatus.com | المواصفات